home *** CD-ROM | disk | FTP | other *** search
- #ifndef _CFORMS_H
- #define _CFORMS_H
-
- #ifndef lint
- static volatile char sccs_cforms_h[] = "@(#) cforms.h,v 1.15 1993/07/21 01:15:16 lasse Exp";
- #endif
-
- #ifndef OK
- #define OK 0
- #endif
-
- #ifndef FAIL
- #define FAIL -1
- #endif
-
- #ifndef TRUE
- #define TRUE 1
- #endif
-
- #ifndef FALSE
- #define FALSE 0
- #endif
-
- #define KEY_ANY 07777
-
- #ifndef KEY_ESC
- #define KEY_ESC 033
- #endif
-
- #define EVENT_KEY 1
- #define EVENT_REFRESH 2
- #define EVENT_ENTRY 3
- #define EVENT_EXIT 4
- #define EVENT_DRAW 5
- #define EVENT_PREVIOUS 6
- #define EVENT_NEXT 7
-
- #define FLD_TYPE 0x000F
- #define FLD_MODIFIER 0x0FF0
-
- #define FLD_RIGHT 0x0010
- #define FLD_LEFT 0x0020
- #define FLD_UPPERCASE 0x0040
- #define FLD_PROTECTED 0x0080
- #define FLD_HIGHLIGHT 0x0100
- #define FLD_INVISIBLE 0x0200
- #define FLD_FORBIDDEN 0x0400
-
- #define FLD_INT 0x0001
- #define FLD_CHAR 0x0002
- #define FLD_ALNUM 0x0003
-
- #define PIC_FRAME 0x0001
-
- #ifndef SLASH
- #define SLASH '/'
- #endif
-
- struct xy {
- int x, y;
- };
-
- #ifndef _COMP_H
- struct event {
- int type;
- int code;
- int global;
- void (*func)(int event_code);
- };
-
- struct field {
- char *name;
- int type;
- int len;
- char *data;
- struct xy pos;
- char *lvalue;
- char *rvalue;
- struct event *event;
- int n_events;
- unsigned long flags;
- char modified;
- struct picture *picture;
- };
-
- struct literal {
- struct xy pos;
- char *value;
- unsigned long flags;
- };
-
- struct picture {
- char *name;
- struct field *field;
- int n_fields;
- struct literal *literal;
- int n_literals;
- struct event *event;
- int n_events;
- int x, y;
- int width, height;
- struct module *module;
- unsigned long flags;
- };
-
- struct module
- {
- struct picture *picture;
- int n_pictures;
- struct event *event;
- int n_events;
- };
-
- struct global
- {
- struct picture *picture;
- struct field *field;
- struct field *move_field;
- int leave_picture;
- char bs; /* Normally backspace */
- char del1; /* Normally DEL */
- char del2; /* Normally CTRL-D */
- char kill; /* Normally CTRL-K */
- char clear; /* Normally CTRL-U */
- };
-
- /*
- * Misc. functions.
- */
- extern int cforms_init(void);
- extern int cforms_end(void);
- extern int cforms_system(const char *command, const char *prompt);
- extern void cforms_refresh();
-
- /*
- * Picture functions.
- */
- extern struct picture *picture(const char *fmt, ...);
- extern int pic_call(struct picture *pic, const char *fieldname);
- extern int pic_leave(void);
- extern int pic_clear(struct picture *pic);
-
- /*
- * Field functons.
- */
- extern struct field *field(const char *fmt, ...);
- extern struct field *fld_move(struct field *fld);
- extern struct field *fld_down(const struct field *fld);
- extern struct field *fld_up(const struct field *fld);
- extern struct field *fld_left(const struct field *fld);
- extern struct field *fld_right(const struct field *fld);
- extern struct field *fld_first(void);
- extern struct field *fld_last(void);
- extern struct field *fld_next(const struct field *fld);
- extern struct field *fld_previous(const struct field *fld);
- extern const char *fld_get(const struct field *fld);
- extern char *fld_get_trimmed(const struct field *fld);
- extern int fld_set(struct field *fld, const char *value);
- extern int fld_nset(struct field *fld, const char *value, int n);
- extern int fld_len(const struct field *fld);
- extern const char *fld_name(const struct field *fld);
- extern int fld_isempty(const struct field *fld);
- extern int fld_ismodified(const struct field *fld);
- extern void fld_touch(struct field *fld);
- extern void fld_sattr(struct field *fld, unsigned long attr);
- extern void fld_cattr(struct field *fld, unsigned long attr);
-
- /*
- * General functions.
- */
- extern get_fld(struct field *fld, int (*check)());
- extern int strequ(const char *s1, const char *s2);
- extern int message(const char *fmt, ...);
- extern int message_nr(const char *fmt, ...);
-
-
- extern struct module *_cf_modules[];
- extern struct global _cf_globals;
-
- #endif /* _COMP_H */
-
- #endif /* _CFORMS_H */
-
-